#ifndef ENTITY_H
#define ENTITY_H

#include "EngineApi.h"
#include "Graphics.h"
#include "Material.h"

class ENGINE_API Entity
{
private:
	
	Vector3 m_scale;
	Vector3 m_position;
	Vector3 m_rotation;

   Material* m_material;

protected:
	Graphics & m_graphics;

public:
	Entity(Graphics &graphics);
   ~Entity() { delete m_material; }

	void Scale(Vector3 scale);  
	void Translate(Vector3 position);
	void Rotate(Vector3 rotation);

	Vector3 GetPosition(){ return m_position; }
	
	bool Draw(USHORT vertexCount, D3DMeshVertex* vertices,
		USHORT indexCount, USHORT* indices,
		USHORT primCount, PRIM_TYPE primType);
};

#endif//ENTITY_H